package com.qd.common.sys.domain.entity.login;

import lombok.Data;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

/**
 * @author sjk
 */
@Data
@Accessors(chain = true)
public class AppLoginUserDTO {
    /**
     * 微信用户唯一标识
     */
    private String openid;
    /**
     * 微信用户全局唯一标识
     */
    private String unionId;
    /**
     * 微信Code
     */
    @NotBlank(message = "code不能为空")
    @Size(max = 200, message = "code长度不能超过{max}位")
    private String code;
    /**
     * 小程序或者公众号标识
     */
    @NotBlank(message = "小程序或者公众号标识不能为空")
    @Size(max = 200, message = "小程序或者公众号标识长度不能超过{max}位")
    private String appId;
    /**
     * 手机号
     */
    @NotBlank(message = "手机号不能为空")
    @Size(max = 50, message = "手机号长度不能超过{max}位")
    private String mobile;
    /**
     * 用户头像
     */
//    @NotBlank(message = "用户头像不能为空")
    @Size(max = 200, message = "用户头像长度不能超过{max}位")
    private String avatar;
    /**
     * 用户昵称不能为空
     */
//    @NotBlank(message = "用户昵称不能为空")
    @Size(max = 200, message = "用户昵称长度不能超过{max}位")
    private String nickName;
    /**
     * 推广码
     */
    private String promotionCode;
    /**
     * 扩展字段，员工工号
     */
    private String note;

    public void freeData() {
        this.openid = null;
        this.unionId = null;
        this.appId = null;
        this.mobile = null;
        this.avatar = null;
        this.nickName = null;
        this.promotionCode = null;
        this.note = null;
    }

}
